Jump to content
  • 0

проблема со скриптом в Mozilla


veana
 Share

Question

скрипт для увеличения изображений, в опере и ие работает, а в мозилле нет

не подскажите в чём дело? :(:rolleyes:

var small = new Array ("small1.jpg","small2.jpg", "small3.jpg","small4.jpg","small5.jpg", "small6.jpg","small7.jpg","small8.jpg", "small9.jpg")

var big = new Array("big1.jpg", "big2.jpg", "big3.jpg","big4.jpg", "big5.jpg", "big6.jpg", "big7.jpg", "big8.jpg", "big9.jpg")

var aflag = new Array(small.length)

var xstr = " "

for (i=0; i<small.length; i++){

xstr+='<IMG ID = "i' + i + ' " SRC = " ' +small+' " onclick="imgchange()" hspace="5" vspace="5" >'

}

document.write(xstr);

function imgchange(){

var xid = event.srcElement.id;

var n = parseInt(xid.substr(1));

if (aflag[n]) document.all[xid].src=small[n];

else document.all[xid].src=big[n];

aflag[n]=!aflag[n];

}

и ещё один скрипт, та же проблема

....

....

<tr id="imageA" cellpadding="0" cellspacing="0" bgcolor="white">

<script>

if (screen.width<=1024){

imageA.width=1010

imageA.height=224

} else{

imageA.width=1149

imageA.height=255

}

</script>

...

на высоту ячейки никак в мозилле не влияет данный код. Отчего?

Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

так?

неа, не работает((

function imgchange(){

var xid = event.srcElement.id

var n = parseInt(xid.substr(1))

if (aflag[n]) document.getElementById(xid).src=small[n]

else document.getElementById(xid).src=big[n]

aflag[n]=!aflag[n]

}

——————————————————————————

if screen.width<=1024){

document.getElementById('imageA').width=1010

document.getElementById('imageA').height=224

} else{

document.getElementById('imageA').width=1149

document.getElementById('imageA').height=255

}

</script>

Edited by veana
Link to comment
Share on other sites

  • 0

Еще event.srcElement в Мозиллах нет. Там свой подход к передаче событий на обработку, и используется event.target.

В общем, похоже, легче будет написать скрипт заново с нуля. Этот слишком уж древний и топорный...

Link to comment
Share on other sites

  • 0

хэй! всезнайка! SelenIT :(

помоги начинающему лузеру :rolleyes:

а поводу ссылки на сайт, начнут тут оценки выставлять, мне не хочется, чтоб в начале пути на меня нападали. Спасибо за попытку помочь)

а так я весь скрипт скопировала

а вставляется в прогу он вот так -

<td colspan="3" bgcolor="#dae0ca" id="main"">

<p>Фотографии

<p align="center"><script type="text/javascript" src="fotosize.js"></script></p>

</td>

Link to comment
Share on other sites

  • 0
начинающему лузеру
Ну это зря. Лузер - это у кого ни в одном браузере не работает :)

Сорри за невнимательность - не сразу разглядел onclick="imgchange()". Тогда все, конечно, проще - меняем на onclick="imgchange(this)", а в функции ловим ссылку на кликнутый рисунок:

function imgchange(img){
var xid = img.id
var n = parseInt(xid.substr(1))
if (aflag[n]) img.src=small[n] // зачем заново определять эл-т по id, когда у нас уже есть ссылка на него?
else img.src=big[n]
aflag[n]=!aflag[n]
}

начнут тут оценки выставлять, мне не хочется, чтоб в начале пути на меня нападали
Не надо бояться оценок. А советов и подсказок - тем более. Разве не лучше узнать о лежащих граблях заранее, не наступая на них?

Так что страничку все-таки хотелось бы посмотреть... ;)

Link to comment
Share on other sites

  • 0

по поводу сайта, буду благодарна за критику, но как-нибудь понежнее только :rolleyes: - http://altay-lands.ru/

а по поводу этого кода скажешь чего-нибудь? почему не работает в мозилле?

<tr id="imageA" cellpadding="0" cellspacing="0" bgcolor="white">

<script>

if (screen.width<=1024){

imageA.width=1010

imageA.height=224

} else{

imageA.width=1149

imageA.height=255

}

</script>

и СПАСИБО! :(

ПС. По поводу зис даже ничего и не знала. Теперь знаю примерно))

Edited by veana
Link to comment
Share on other sites

  • 0

да вот знаешь, они больше были. А заказчик сказал, что надо меньше

согласна с тобой полностью)

вообще это мой первый сайт) и многое-премногое не знаю, наверняка там в реализации много нелогичного

ПС. Содержимое выравняю :rolleyes:

и..ии..приятно слышать!

Link to comment
Share on other sites

  • 0

veana, по-моему, совершенно не стоило бояться :). Сайт очень симпатичный, а если учесть, что это первая работа... можно не только не стесняться, но даже немножко хвастаться :). Дизайн легкий и ненавязчивый, важная информация сразу доступна... а после взгляда на картинки в шапке мелкие недочеты вообще практически незаметны :)

Но стремиться, разумеется, еще есть куда. Из сразу бросившегося в глаза:

  • Не указана кодировка (мой англоязычный Firefox по умолчанию пытается грузить западноевропейскую);
  • Некоторый разнобой шрифтов (особенно между страничкой "Контакты" и остальными);
  • Почему в коде стоит <html lang="en">, когда страничка написана по-русски?
  • <script> сразу после <table>, до <tr> - плохая практика, браузер никак не ждет скрипта в этом месте и путается при разборе разметки. Лучше бы задать таблице класс и переопределять ширину для этого класса в зависимости от размеров окна через стили. И привязываться к ширине экрана, а не окна, тоже не лучшее решение - не все юзеры смотрят сайты развернутыми на весь экран, а у многих еще раскрыты всякие боковые панели...
  • Скрипты вообще есть куда совершенствовать. Хорошо было бы, например, если бы ту же фотогалерею можно было просматривать и без JS (пусть и в менее красивом виде). И картинки в шапке, на мой взгляд, меняются слишком резко...
  • С таким доктайпом странички работают и отображаются в режиме обратной совместимости. Чтобы использовать CSS в полную силу, лучше использовать полный доктайп - напр., <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">. Правда, при этом может вылезти много "сюрпризов", так что переделывать так уже готовый сайт, наверное, не стоит, это скорее совет на будущее.
  • Есть явные ошибки копипаста типа valign="right" (бывает top, center и middle). И вообще лучше вынести подобные вещи в стили.
  • Для картинок крайне желательно указывать альтернативный текст (alt). А совсем хорошо - еще и текст подсказки при наведении (title).

Но вообще, повторюсь, для первого сайта вполне достойно! Дальнейших творческих успехов!

Link to comment
Share on other sites

  • 0

SelenIT,

классный ты! Всё разжевал, всё рассказал :( Спасибо! И Спасибо :(

Я бы тоже рада чем помочь, пригодиться, поделиться. Да вот только чем я могу пригодиться?) Обещаю подумать и ты подумай :rolleyes:

А ещё я вначале хотела слайды во флэше сделать (чтоб покрасивее да может с надписями рекламными и завитушек может добавить), но потом как-то решила, что у многих пользователей нет флэш плэйеров. Это зря я решила? Или можно как нибудь прописать - что если имеется флэш плейер, то загрузить такой-то объект, а иначе сделать то-то?

ПС. Поправлю вышесказанные недочёты.

Edited by veana
Link to comment
Share on other sites

  • 0

veana, завитушек там точно не надо;), а насчет флеша - дело хозяйское. Можно посмотреть в сторону готовых реализаций слайдшоу на JS или поэкспериментировать, например, с плавной сменой прозрачности...

xaero, все верно, но в данном случае это оказалось избыточным).

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy